WSH在檔案操作上,在「取得檔案的絕對路徑」有兩種方式
一、是使用「GetAbsolutePathName」方法
二、是使用「Path」屬性
感覺上得到的答案都是一樣的
那有什麼不同呢??
一、使用「GetAbsolutePathName」方法
Option Explicit
Private FSO
Private LogFilePath
Set FSO = CreateObject("Scripting.FileSystemObject")
LogFilePath = FSO.GetAbsolutePathName("Sample.log")
WScript.Echo "記錄檔的絕對路徑為" & vbCrLF & "'" & LogFilePath & "'" & vbCrLF & "。"
With FSO.OpenTextFile(LogFilePath, 8, True)
.WriteLine Now() & vbTab & "'" & WScript.ScriptName & "'已執行。"
End With
Set FSO = Nothing
二、使用「Path」屬性
Option Explicit
Private FSO
Private ThisFile
Set FSO = CreateObject("Scripting.FileSystemObject")
Set ThisFile = FSO.GetFile("Sample.log")
Wscript.Echo ThisFile.Path
Set FSO = Nothing
Set ThisFile = Nothing
得到的結果:
一、
二、
若檔案不存在則會出現錯誤,如下:
若檔案存在則會出現如下訊息:
以這兩種方式均可得到相同的絕對路徑
但是這其中有一點不同
第一種方式「GetAbsolutePathName("Sample.log")」
「Sample.log」這個檔案若是不存在的話
以這個方法執行,並不會因為檔案不存在而產生失敗
若不存在,它還會自動幫你建立檔案
所以,若是不確定檔案是否存在,就以此方法處理
若是確定檔案存在,那就可以以第二種方式處理..
提供給有需要的人..